package JavaStudy.reflect;

//测试class类的创建方式有哪些
public class test2 {
    public static void main(String[] args) throws ClassNotFoundException {
        User user=new User();
        Student student = new Student();
        //通过对象获得
        Class c1 = user.getClass();

        //forname获得
        Class c2 = Class.forName("reflect.User");

        //通过类名.class获得
        Class c3=User.class;

        System.out.println(c1==c2);
        System.out.println(c2==c3);//通过test1可知，其实都是同一个类,一个类只有一个class对象

        //其他
        //基本内置类型的包装类都有一个type属性
        Class c4 = Integer.TYPE;//当然仅限内置类型
        System.out.println(c4);

        //获得父类类型
        Class c5 = student.getClass().getSuperclass();
        System.out.println(c5);
    }
}

